shortcutcontroller: Add some debug spew
authorMatthias Clasen <mclasen@redhat.com>
Sat, 27 Jun 2020 02:12:42 +0000 (22:12 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 27 Jun 2020 02:12:42 +0000 (22:12 -0400)
This helps in debugging event routing and keyboard
shortcut issues.

gtk/gtkshortcutcontroller.c

index d90a1814281e1fbecaabdb87f21ab4bf045c532d..19c3d793dd7619f7d9a234386a6a622e8ca8130b 100644 (file)
@@ -74,6 +74,7 @@
 #include "gtktypebuiltins.h"
 #include "gtkwidgetprivate.h"
 #include "gtknative.h"
+#include "gtkdebug.h"
 
 #include <gdk/gdk.h>
 
@@ -370,6 +371,18 @@ gtk_shortcut_controller_run_controllers (GtkEventController *controller,
       data->widget = widget;
     }
 
+#ifdef G_ENABLE_DEBUG
+  if (GTK_DEBUG_CHECK (KEYBINDINGS))
+    {
+      g_message ("Found %u shortcuts triggered %s by %s %u %u",
+                 shortcuts ? shortcuts->len : 0,
+                 has_exact ? "exactly" : "approximately",
+                 gdk_event_get_event_type (event) == GDK_KEY_PRESS ? "key press" : "key release",
+                 gdk_key_event_get_keyval (event),
+                 gdk_event_get_modifier_state (event));
+    }
+#endif
+
   if (!shortcuts)
     return retval;